<template>
  <div>
    <!-- 为 ECharts 准备一个具备大小（宽高）的 DOM -->
    <div id="main" style="width: 1000px;height:400px;"></div>
  </div>
</template>

<script>
  // 引入echarts
  import echarts from 'echarts'

  // 引入lodash 进行报表数据和配置项的合并
  import _ from 'lodash'
  export default {
    data() {
      return {
        // 配置项
        options: {
          title: {
            text: '用户来源'
          },
          tooltip: {
            trigger: 'axis',
            axisPointer: {
              type: 'cross',
              label: {
                backgroundColor: '#E9EEF3'
              }
            }
          },
          grid: {
            left: '3%',
            right: '4%',
            bottom: '3%',
            containLabel: true
          },
          xAxis: [{
            boundaryGap: false
          }],
          yAxis: [{
            type: 'value'
          }]
        }
      }
    },
    created() {},
    async mounted() {
      // 基于准备好的dom，初始化echarts实例
      var myChart = echarts.init(document.getElementById('main'))

      // 获取折线图数据
      const {
        data: res
      } = await this.$http.get('reports/type/1')

      if (res.meta.status !== 200) return this.$message.error('获取折线图数据失败')

      // 获取数据成功
      this.$message.success('获取折线图数据成功')
      // console.log(res.data)

      // 合并请求到的报表数据和配置项
      const data = _.merge(res.data, this.options)
      // 使用刚指定的配置项和数据显示图表。
      myChart.setOption(data)
    },
    methods: {}
  }

</script>

<style lang="less" scoped>
</style>
